This invention relates to the field of pulse generation, and more particularly to the field of a digital pulse synthesis architecture permitting accurate edge placement, superior channel-to-channel stability, and accurate trigger output positioning relative to any pulse in a burst of pulses.
Prior art pulse generators primarily rely on analog circuitry for many of their critical timing parameters. For example, a prior art pulse generator whose architecture is described in the August 1990 Hewlett-Packard Journal, uses one-shot multi-vibrators as delay and width timing generation elements. The critical timing specifications that result from this analog approach produce tolerances that are proportional to the length of the delays or widths involved. Also, each channel's tolerances are independent of each other, and therefore channel-to-channel specifications are additive with respect to their independent tolerances.
According to the present invention, a more completely digital approach to pulse generation produces more controllable tolerances, especially channel-to-channel tolerances.
Many of those who purchase pulse generators today are interested in characterizing high speed digital devices by observing with a sampling oscilloscope the relationship between an applied stimulus from a pulse generator and the response of a device under test. Sampling oscilloscopes have very high bandwidths, but, as a result of how they obtain that high bandwidth, have a delay of from 20 to 70 nanoseconds from the time that they are triggered to when they are actually able to sample their input. This delay is known as the "pretrigger" time, and creates problems for those who want to use sampling oscilloscopes in conjunction with conventional pulse generators since conventional pulse generators do not provide user control of accurate placement of their trigger output signals in time.
What is desired is a pulse generator that permits user control of highly accurate placement in time of the trigger output signal relative to the pulse output, either forward or backward in time.
Prior art pulse generators also are limited in their ability to position trigger pulses accurately with respect to pulses late in a burst of pulses. In testing with a traditional pulse generator and a digital sampling oscilloscope, the oscilloscope must be triggered off the trigger out signal from the pulse generator and the oscilloscope channel delay adjusted to look at the interval of interest. As an example, to look at the roll-over of an eight bit synchronous counter, one wants to generate 255 clock pulses to fill up the counter before the interesting event actually occurs. The event of interest then occurs after 255 pulse periods. If the pulse frequency is 100 MHz, a delay of 2,550 nanoseconds occurs before the event of interest. But the typical RMS jitter of a conventional pulse generator at this setting is 0.05% of the programmed interval, in this case 1.275 nanoseconds of jitter emanating from the pulse generator, not including the jitter of the oscilloscope. Obviously, in this environment, the user's ability to detect output timing variations due to other factors is degraded.
What is desired is a pulse generator that can accurately and adjustably position a trigger out signal relative to any pulse that it produces, even pulses near the end of a large burst of pulses.
Prior art pulse generators typically only permit trailing edge placement to be defined by the delay before the leading edge and the width of the pulse. In these pulse generators, when the pulse delay is varied, the width remains constant and the trailing edge moves accordingly.
What is desired is a pulse generator that provides the ability to specify the trailing edge timing directly.
In prior art pulse generators if the period is changed, but the operator desires to have a pulse that is proportionally the same in terms of delay and width, the operator must explicitly calculate and set new values for delay and width. Some prior art pulse generators have a "duty factor mode", which automatically recalculates the pulse width to keep it proportional when the period is changed, but delay values are still fixed.
What is desired is a pulse generator in which both pulse width and phase can be specified as a percentage of the overall period and the pulse generator will then automatically keep the width proportional and its phase constant when the frequency is changed.
While some prior art pulse generators allow their internal oscillators to be synchronized with an external frequency source, their trigger input signals then become asynchronous with respect to the output pulses except to the extent that the external frequency source and the trigger input can be synchronized externally.
What is desired is a means for controlling by the use of an external signal when bursts of pulses synchronized to an external frequency source will begin.
It would also be desirable to have some channels running at half the rate of the others, but synchronized with them. It would further be desirable to be able to disable a channel, but have it maintain a dc voltage output at an operator determined level.
Prior art pulse generators use external measurements and user calibration adjustments to maintain the time accuracy of their pulse outputs.
What is desired is an automatically self-calibrating pulse generator that only requires the operator to connect an output to a calibration input in order to accomplish the calibration.